// 添加响应拦截器
//axios.interceptors.response.use(函数1,函数2)
//函数1,处理是成功状态(状态码上2xx,3xx)的响应



//函数2,是处理失败状态(状态码是4xx,5xx)的响应
axios.interceptors.response.use(
  function(response){
    // 对正确响应数据进行
    console.log(response);
    let{status,message}=response.data;
    if(status===1)layer.msg(message);
    return response;

  },
  function(error){
    //对错误响应
    let{status,message}=error.response.data;
    layer.msg(message)
    return Promise.reject(error);
  }
);
// 切换两个盒子
//点击登录的盒子里面的标签,让注册的盒子显示(吧登录的盒子隐藏)
$('.login a').on('click',function(){
  $('.register').show();
})
// 点击注册的a标签,让注册盒子隐藏
$('.register a').on('click',function(){
  $('.register').hide();
})
// 登录功能
$('.login form').on('submit',function(e){
  e.preventDefault();
  let data=$(this).serialize();
  // ajax提交数据.选择axios
  //axios.post(url,请求体).then(函数)
  axios.post('http://www.itcbc.com:8080/api/login',data).then(res=>{
    // 结构赋值,获取响应结果
    let{status,message,token}=res.data;
    if(status===0){
      // 保存token,
      //
      localStorage.setItem('token',token);
      // 提示一下,加点时间
      layer.msg(message,{time:1500},()=>{
        location.href='./index.html'
      })
    }
  })
})

// 注册功能
// 当提交时,阻止默认行为,搜集账号密码,提交到接口
$('.register form').on('submit', function (e) {
  e.preventDefault();
  let data = $(this).serialize();
  // console.log(data);
  // axios.post(url, 请求体).then(res => {});
  axios.post('http://www.itcbc.com:8080/api/reguser', data).then(res => {
    // console.log(res);
    let { status, message } = res.data;
    if (status === 0) {
      layer.msg(message);
      // 清空输入框（重置表单）
      $('.register form')[0].reset();
      // 切换到登录的盒子
      $('.register').hide();
    }
  })
})
  // 表单验证
  // 加载语法 let xxx=layui.模块名
  let form=layui.form;
  form.verify({
     // len: ['正则表达式', '验证不通过时的提示'],
  len: [/^\S{6,12}$/, '长度6~12位且不能有空格'],
    // 案例中，确认密码使用了这个验证规则，形参val表示我们输入的确认密码
  // same: function (val) { return '验证不通过时的提示' }
  same:function (val) {
    let pwd=$('.pwd').val();
    if (pwd !== val) return '两次密码不一致';
  }
  })